<!DOCTYPE html>
<html lang="zc-CN">

<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>

<body>

    <script>
        const cai = {
            uname: '只因',
            age: 2.5,
            hobbit: ['sing', 'dance', 'rap', 'basketball'],
            fans: {
                uname: 'ikun',
                age: 9999,
                hobbit: ['smoke', 'drink', 'makeHairStyle'],
            },
        }
        // const feng = {}
        // function deepClone(newObj, oldObj) {
        //     for (let k in oldObj) {
        //         if (oldObj[k] instanceof Array) {
        //             newObj[k] = []
        //             deepClone(newObj[k], oldObj[k])
        //         } else if (oldObj[k] instanceof Object) {
        //             newObj[k] = {}
        //             deepClone(newObj[k], oldObj[k])
        //         } else {
        //             newObj[k] = oldObj[k]
        //         }
        //     }
        // }
        // deepClone(feng, cai)
        // console.log(feng);
        // console.log(cai);
        
        //JSON能实现深拷贝，但是不能识别undefined和函数
        const feng = JSON.parse(JSON.stringify(cai))
        console.log(feng);
        feng.fans.hobbit[2] = '1111'
        console.log(feng);
        console.log(cai);
    </script>
</body>

</html>